home *** CD-ROM | disk | FTP | other *** search
- package java.awt;
-
- import java.awt.image.BufferedImage;
- import java.security.AccessController;
- import java.util.Locale;
- import sun.font.FontManager;
- import sun.java2d.HeadlessGraphicsEnvironment;
- import sun.java2d.SunGraphicsEnvironment;
- import sun.security.action.GetPropertyAction;
-
- public abstract class GraphicsEnvironment {
- private static GraphicsEnvironment localEnv;
- private static Boolean headless;
- private static Boolean defaultHeadless;
-
- protected GraphicsEnvironment() {
- }
-
- public static synchronized GraphicsEnvironment getLocalGraphicsEnvironment() {
- if (localEnv == null) {
- String var0 = (String)AccessController.doPrivileged(new GetPropertyAction("java.awt.graphicsenv", (String)null));
-
- try {
- localEnv = (GraphicsEnvironment)Class.forName(var0).newInstance();
- if (isHeadless()) {
- localEnv = new HeadlessGraphicsEnvironment(localEnv);
- }
- } catch (ClassNotFoundException var2) {
- throw new Error("Could not find class: " + var0);
- } catch (InstantiationException var3) {
- throw new Error("Could not instantiate Graphics Environment: " + var0);
- } catch (IllegalAccessException var4) {
- throw new Error("Could not access Graphics Environment: " + var0);
- }
- }
-
- return localEnv;
- }
-
- public static boolean isHeadless() {
- return getHeadlessProperty();
- }
-
- static String getHeadlessMessage() {
- if (headless == null) {
- getHeadlessProperty();
- }
-
- return defaultHeadless != Boolean.TRUE ? null : "\nNo X11 DISPLAY variable was set, but this program performed an operation which requires it.";
- }
-
- private static boolean getHeadlessProperty() {
- if (headless == null) {
- AccessController.doPrivileged(new 1());
- }
-
- return headless;
- }
-
- static void checkHeadless() throws HeadlessException {
- if (isHeadless()) {
- throw new HeadlessException();
- }
- }
-
- public boolean isHeadlessInstance() {
- return getHeadlessProperty();
- }
-
- public abstract GraphicsDevice[] getScreenDevices() throws HeadlessException;
-
- public abstract GraphicsDevice getDefaultScreenDevice() throws HeadlessException;
-
- public abstract Graphics2D createGraphics(BufferedImage var1);
-
- public abstract Font[] getAllFonts();
-
- public abstract String[] getAvailableFontFamilyNames();
-
- public abstract String[] getAvailableFontFamilyNames(Locale var1);
-
- public boolean registerFont(Font var1) {
- return FontManager.registerFont(var1);
- }
-
- public void preferLocaleFonts() {
- FontManager.preferLocaleFonts();
- }
-
- public void preferProportionalFonts() {
- FontManager.preferProportionalFonts();
- }
-
- public Point getCenterPoint() throws HeadlessException {
- Rectangle var1 = SunGraphicsEnvironment.getUsableBounds(this.getDefaultScreenDevice());
- return new Point(var1.width / 2 + var1.x, var1.height / 2 + var1.y);
- }
-
- public Rectangle getMaximumWindowBounds() throws HeadlessException {
- return SunGraphicsEnvironment.getUsableBounds(this.getDefaultScreenDevice());
- }
-
- // $FF: synthetic method
- static Boolean access$002(Boolean var0) {
- headless = var0;
- return var0;
- }
-
- // $FF: synthetic method
- static Boolean access$102(Boolean var0) {
- defaultHeadless = var0;
- return var0;
- }
- }
-